Logo  
Dienstleistungen
Webprogrammierung
Webhosting
Kontakt
AGBs
Domaincheck
Home / Iptables
Dokumentation
Dokumentation

Befehle für Ketten
  1. Eine neue Kette erstellen (-N).
  2. Eine leere Kette loeschen (-X).
  3. Die Policy fuer eine eingebaute Kette aendern (-P).
  4. Die Regeln einer Kette auflisten (-L).
  5. Die Regeln aus einer Kette ausspuelen (flush) (-F).
  6. Paket- und Bytezaehler aller Regeln einer Kette auf Null stellen (-Z).


Befehle für Regeln
  1. Eine neue Regel an eine Kette anhaengen (-A).
  2. Eine neue Regel an eine bestimmte Position in der Kette einfuegen (-I).
  3. Eine Regel an bestimmter Position in der Kette ersetzen (-R).
  4. Eine Regel an einer bestimmten Position in der Kette loeschen (-D).
  5. Die erste passende Regel in einer Kette loeschen (-D).


Beispielkonfiguration für Router (Internetanbindung)
Folgende Komponenten von iptables sollten in den Kernel einkompiliert werden.
(Um den Kernel neu zu kompilieren benutzen sie z.B. den Befehl make menuconfig in dem Verzeichnis /usr/src/linux.)

Networking options
->Network packet filtering
  IP: Netfilter Configuration --->
    Connection tracking
    IP Tables support
	  Connection state match support
	  Packet filtering
	  Full NAT
	    MASQUERADE target support
Folgende Komponenten sehe ich als optional an.
  • FTP protocol support
    Ermöglicht active FTP.
  • limit match support
    Ermöglicht die Begrenzung der Häufigkeit, die eine Regel zutrifft. z.B. um die Anzahl der Pings auf den eigenen Rechner auf 10 pro Sekunde zu begrenzen.
  • Multiple port match support
    Ermöglicht die Erzeugung komplexer Regeln mit mehr als einem Quelle- und Zielport.
  • LOG target supprt
    Ermöglicht eine Logbucheintrag im syslog zu machen, falls eine Regel zutrifft. z.B. um Port-Scans zu loggen.
Das folgende Script wird bei jedem Booten gestartet. Dies sollte unbedingt vor dem Starten des Netzwerkes geschehen, da sonst der Rechner für die kurze Zeit vom Initialisieren des Netzwerkes bis zum Ausführen des Scriptes offen ist. Diese Zeit wird zwar unter einer Sekunde sein, wenn der Angreifer es aber schafft den Linuxrechner zum neu booten zu bringen, kann er in dieser Sekunde das erste Paket einer TCP-Verbindung schicken und schon hat er eine Verbindung aufgebaut, die eigentlich durch Iptables unterbunden werden sollte.
Es macht Sinn diese Script mit root-Rechten und 711-Rechten in dem Verzeichnis /etc/init.d/ abzulegen. z.B. mit dem Namen fire.
Damit das Script nun vor dem Netzwerk gestarte wird, muss ein symbilischer Link im Verzeichnis rc3.d erstellt werden, der eine Zahl kleiner als das Netzwerk enthält.
Wenn also im Verzeichnis /etc/init.d/rc3.d der Link S05network existiert, ist es sinnvoll den folgenden Link zu erstellen:
ln -s /etc/init.d/fire /etc/init.d/rc3.d/S04firewall
Hierbei ist die Datei das Script zur Konfiguration von Iptables.
Folgend ein Beispiel mit Kommentaren:Beispielscript

Source NAT (Masquerade)
Hierbei wird die Quelladresse von Paketen, die die OUTPUT-Schnittstelle verlassen verändert.
Wenn feste und dynamische IP-Adressen vergeben werden, sollte man die Befehle für die festen IP-Quell-Adressen als erstes aufführen.

Bei festen IP-Quell-Adressen wird folgender Befehl verwendet:
iptables -t nat -A POSTROUTING -o eth0 -j SNAT --to 1.2.3.4

Bei dynamischer IP-Quell-Adressen wird folgender Befehl verwendet:
iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE



Destination NAT
Hierbei wird die Zieladresse von Paketen, die die INPUT-Schnittstelle eingehen verändert. Alle Filter- und Routingprozesse sehen die neue, veränderte Zieladresse und handeln danach.
Es kann auch die OUTPUT-Schnittstelle verwendet werden, um die Zieladresse von lokal generierten Paketen zu ändern.
Es reicht nicht, nur diese Regeln einzufügen. Es muß ebenfalls der Verkehr für die Pakete in der FORWARD-Kette freigegeben werden.

Die Zieladresse zu 5.6.7.8 aendern:
iptables -t nat -A PREROUTING -i eth1 -j DNAT --to 5.6.7.8

Zieladresse zu 5.6.7.8, 5.6.7.9 oder 5.6.7.10 aendern:
iptables -t nat -A PREROUTING -i eth1 -j DNAT --to 5.6.7.8-5.6.7.10

Ändern der Zieladresse von Webtraffic auf 5.6.7.8 Port 8080:
iptables -t nat -A PREROUTING -p tcp --dport 80 -i eth1 -j DNAT --to 5.6.7.8:8080

Lokale Pakete fuer 1.2.3.4 an das Loopback umleiten:
iptables -t nat -A OUTPUT -d 1.2.3.4 -j DNAT --to 127.0.0.1


Newsletter
Diskussionsforen
Allgemein
Netzwerk
Linux
Windows

Login


Passwort vergessen
kostenlos Anmelden
Linuxbain
Über uns
Impressum
Disclaimer
Feedback
© 2002 by Linuxbrain, Germany